The ability to quickly and easily modify a software application is an important requirement in today's e-commerce environment. Since the demands of e-commerce typically requires rapid changes to an application's functionality, and the need to integrate new offerings from third party e-commerce providers, the ability to quickly modify an application to take these needs into account is of paramount importance. For example, a software application that is accessible to a user, and provides to that user some set of business functions, must be flexible enough so that the content or functionality of the application can be changed to reflect changes in the underlying business functions of the organization. At the same time it must be flexible enough to incorporate any changes demanded by, for example, third party vendors or business partners. In the field of Internet commerce the software application is commonly in the form of a web application running on an application or web server, that is accessible over the Internet to a large number of users. Third party Integrated Service Vendors (ISV's) often add functionality to these web applications, that should then be offered to the user on a dynamic basis. The ability to easily integrate these ISV offerings can give the organization a competitive advantage in quickly responding to the needs of the marketplace.
In addition to web applications that are accessible over the Internet, another type of application that would benefit greatly from flexibility in incorporating third party applications, are those administrative applications that are used to organize and administer the resources of an organization. As referred to herein, these resources may include those resources and services offered by other business units within an organization, or by third party vendors, that seek to integrate their application offerings with the enterprise level applications offered by the organization. Typically, an administrative console or application is used to administer these otherwise independent offerings. The ability to modify the administrative console is important in being able to easily administer third party applications, which normally would require their own interface.
While there exists several methods to extend application functionality by incorporating segments or objects from other applications, there is as yet no easy means by which an application can include the content or functionality of another application in a dynamic way that is reflected immediately to both the administrator and user of the application. Furthermore, there is no traditional mechanism by which a third party vendor can extend the functionality of an administrative console or other application by providing an extension with associated content that can be dynamically linked to the administrative console or whose content is incorporated into the administrative console in a dynamic way during run-time processing.